/**
 * This is my code.
 *
 * $Id$
 */
package fi.jab.esb.config.xml;


/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Sql Provider Type</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link fi.jab.esb.config.xml.SqlProviderType#getDatasource <em>Datasource</em>}</li>
 *   <li>{@link fi.jab.esb.config.xml.SqlProviderType#getDriver <em>Driver</em>}</li>
 *   <li>{@link fi.jab.esb.config.xml.SqlProviderType#getPassword <em>Password</em>}</li>
 *   <li>{@link fi.jab.esb.config.xml.SqlProviderType#isTransacted <em>Transacted</em>}</li>
 *   <li>{@link fi.jab.esb.config.xml.SqlProviderType#getUrl <em>Url</em>}</li>
 *   <li>{@link fi.jab.esb.config.xml.SqlProviderType#getUsername <em>Username</em>}</li>
 * </ul>
 * </p>
 *
 * @see fi.jab.esb.config.xml.XmlPackage#getSqlProviderType()
 * @model extendedMetaData="name='sql-provider_._type' kind='elementOnly'"
 * @generated
 */
public interface SqlProviderType extends BusProvider
{
  /**
   * Returns the value of the '<em><b>Datasource</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * <!-- begin-model-doc -->
   * The name of the datasource.
   * <!-- end-model-doc -->
   * @return the value of the '<em>Datasource</em>' attribute.
   * @see #setDatasource(String)
   * @see fi.jab.esb.config.xml.XmlPackage#getSqlProviderType_Datasource()
   * @model dataType="org.eclipse.emf.ecore.xml.type.String"
   *        extendedMetaData="kind='attribute' name='datasource'"
   * @generated
   */
  String getDatasource();

  /**
   * Sets the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#getDatasource <em>Datasource</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Datasource</em>' attribute.
   * @see #getDatasource()
   * @generated
   */
  void setDatasource(String value);

  /**
   * Returns the value of the '<em><b>Driver</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * <!-- begin-model-doc -->
   * The driver needed to connect to the db.
   * <!-- end-model-doc -->
   * @return the value of the '<em>Driver</em>' attribute.
   * @see #setDriver(String)
   * @see fi.jab.esb.config.xml.XmlPackage#getSqlProviderType_Driver()
   * @model dataType="org.eclipse.emf.ecore.xml.type.String"
   *        extendedMetaData="kind='attribute' name='driver'"
   * @generated
   */
  String getDriver();

  /**
   * Sets the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#getDriver <em>Driver</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Driver</em>' attribute.
   * @see #getDriver()
   * @generated
   */
  void setDriver(String value);

  /**
   * Returns the value of the '<em><b>Password</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * <!-- begin-model-doc -->
   * The password used to access the database.
   * <!-- end-model-doc -->
   * @return the value of the '<em>Password</em>' attribute.
   * @see #setPassword(String)
   * @see fi.jab.esb.config.xml.XmlPackage#getSqlProviderType_Password()
   * @model dataType="org.eclipse.emf.ecore.xml.type.String"
   *        extendedMetaData="kind='attribute' name='password'"
   * @generated
   */
  String getPassword();

  /**
   * Sets the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#getPassword <em>Password</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Password</em>' attribute.
   * @see #getPassword()
   * @generated
   */
  void setPassword(String value);

  /**
   * Returns the value of the '<em><b>Transacted</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * <!-- begin-model-doc -->
   * The transacted flag.
   * <!-- end-model-doc -->
   * @return the value of the '<em>Transacted</em>' attribute.
   * @see #isSetTransacted()
   * @see #unsetTransacted()
   * @see #setTransacted(boolean)
   * @see fi.jab.esb.config.xml.XmlPackage#getSqlProviderType_Transacted()
   * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean"
   *        extendedMetaData="kind='attribute' name='transacted'"
   * @generated
   */
  boolean isTransacted();

  /**
   * Sets the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#isTransacted <em>Transacted</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Transacted</em>' attribute.
   * @see #isSetTransacted()
   * @see #unsetTransacted()
   * @see #isTransacted()
   * @generated
   */
  void setTransacted(boolean value);

  /**
   * Unsets the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#isTransacted <em>Transacted</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @see #isSetTransacted()
   * @see #isTransacted()
   * @see #setTransacted(boolean)
   * @generated
   */
  void unsetTransacted();

  /**
   * Returns whether the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#isTransacted <em>Transacted</em>}' attribute is set.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @return whether the value of the '<em>Transacted</em>' attribute is set.
   * @see #unsetTransacted()
   * @see #isTransacted()
   * @see #setTransacted(boolean)
   * @generated
   */
  boolean isSetTransacted();

  /**
   * Returns the value of the '<em><b>Url</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * <!-- begin-model-doc -->
   * The url needed to connect to the db.
   * <!-- end-model-doc -->
   * @return the value of the '<em>Url</em>' attribute.
   * @see #setUrl(String)
   * @see fi.jab.esb.config.xml.XmlPackage#getSqlProviderType_Url()
   * @model dataType="org.eclipse.emf.ecore.xml.type.String"
   *        extendedMetaData="kind='attribute' name='url'"
   * @generated
   */
  String getUrl();

  /**
   * Sets the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#getUrl <em>Url</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Url</em>' attribute.
   * @see #getUrl()
   * @generated
   */
  void setUrl(String value);

  /**
   * Returns the value of the '<em><b>Username</b></em>' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * <!-- begin-model-doc -->
   * The username used to access the database.
   * <!-- end-model-doc -->
   * @return the value of the '<em>Username</em>' attribute.
   * @see #setUsername(String)
   * @see fi.jab.esb.config.xml.XmlPackage#getSqlProviderType_Username()
   * @model dataType="org.eclipse.emf.ecore.xml.type.String"
   *        extendedMetaData="kind='attribute' name='username'"
   * @generated
   */
  String getUsername();

  /**
   * Sets the value of the '{@link fi.jab.esb.config.xml.SqlProviderType#getUsername <em>Username</em>}' attribute.
   * <!-- begin-user-doc -->
   * <!-- end-user-doc -->
   * @param value the new value of the '<em>Username</em>' attribute.
   * @see #getUsername()
   * @generated
   */
  void setUsername(String value);

} // SqlProviderType
